perm filename NBS.NOT[NBS,WD] blob
sn#235041 filedate 1976-08-27 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00032 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00004 00002 \|\
C00005 00003
C00006 00004 The Initial Permutation
C00008 00005 These are the selection functions S1...S8 of the NBS algorithm, which
C00013 00006 Each row of an S is a permutation of the numbers 0 through 15 and
C00015 00007 S5
C00017 00008 The process which decomposes a six bit number by taking the first and
C00019 00009 Permuted Choice 1
C00021 00010 K1 through K16 are the 48 bit subsets of the 64 bit key
C00023 00011 K5
C00025 00012 K9
C00027 00013 K13
C00029 00014 The following are the bits omitted in each of K1 through K16, by the
C00035 00015 K1 through K16 are the 48 bit subsets of the 64 bit key employed in each
C00037 00016 K5
C00039 00017 K9
C00041 00018 K13
C00043 00019 The following are the bits omitted in each of K1 through K16, by the
C00044 00020 K1 through K16 are the 48 bit subsets of the 64 bit key employed in each
C00046 00021 K5
C00048 00022 K9
C00050 00023 K13
C00052 00024 The following are the bits omitted in each of K1 through K16, by the
C00054 00025 PC2
C00056 00026 Utilization of the key bits in the various rounds
C00060 00027 B25 16 7 5 21 13 11 14 19 1 15 12 18 10 6 14
C00063 00028 B49 5 8 17 4 22 19 9 23 3 20 6 7 24 13
C00065 00029 Utilization of the key bits in the various rounds
C00069 00030 B27 32 39 28 35 27 47 30 26 45 36 43 37 44 25 14
C00073 00031 Utilization of the key Bits in the various rounds
C00077 00032 B26 17 13 11 14 2 9 23 15 12 18 10 16 24 8 21 15
C00081 ENDMK
C⊗;
\|\
\M0FIX25X; \unused
\M1FIX25; \principle font
\M2FIX20; \small font for wide tables
\M3FIX30; \title font
\⊂'200455;\turn on flags outovl option, nest⊃quote, multiarg macros, lf sim,
\⊂'010000;\⊂'1000002;\
\←'0;\→#\∞EVERYPAGE[\P\←#\+=1;\→#\oEP{0 \D#}\WEP,=800;=2100;\p]\
\⊂'100;\ TO TURN ON EVERYPAGE MACRO
\F1
\C \#\F3Notes on the National Bureau of Standards Data Encryption Standard\G
\C Whitfield Diffie
\C August 1976
The Initial Permutation
IP
58 50 42 34 26 18 10 2
60 52 44 36 28 20 12 4
62 54 46 38 30 22 14 6
64 56 48 40 32 24 16 8
57 49 41 33 25 17 9 1
59 51 43 35 27 19 11 3
61 53 45 37 29 21 13 5
63 55 47 39 31 23 15 7
The initial permutation can easily be seen to have been formed as
follows. The numbers 1 through 64 were written from top to bottom and from
right to left in a square array eight elements on a side. The even rows were
then separated out and placed above the odd. The result is then read off from
left to right and from top to bottom.
IP may be decomposed into cycles as follows:
(1 58 55 13 28 40)
(2 50 53 29 32 8)
(3 42 51 45 27 48)
(4 34 49 61 31 16)
(5 26 56)
(6 18 54 21 30 24)
(7 10 52 37 25 64)
(9 60 39)
(11 4435 41 59 47)
(12 36 33 57 63 15)
(14 20 38 17 62 23)
(19 46)
(22)
These are the selection functions S1...S8 of the NBS algorithm, which
map 6 bit quantities to four bit ones. The image of a six bit number is
obtained by taking the first and last bits as the row number in one of the
following tables, and the middle four bits as the column number.
Note that each row is a permutation of the numbers 0...15.
S1
14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7
0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8
4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0
15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13
S2
15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10
3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5
0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15
13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9
S3
10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8
13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1
13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7
1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12
S4
7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15
13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9
10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4
3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14
S5
2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9
14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6
4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14
11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3
S6
12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11
10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8
9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6
4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13
S7
4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1
13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6
1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2
6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12
S8
13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7
1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2
7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8
2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11
Each row of an S is a permutation of the numbers 0 through 15 and
may be written as a product of cycles.
S1
Row 1: (0 14) (1 4 2 13 9 10 6 11 12 5 15 7 8 3)
Row 2: (0) (1 15 8 10 12 9 6 13 5 2 7) (3 4 14) (11)
Row 3: (0 4 13 10 9 12 3 8 15) (1) (2 14 5 6) (7 11)
Row 4: (0 15 13) (1 12 10 3 2 8 5 9 11 14 6) (4) (7)
S2
(0 15 10 2 8 9 7 4 6 3 14 5 11 13) (1) (12)
(0 3 7 14 11 10 1 13 9) (2 4 15 5) (6 8 12)
(0) (1 14 2 7) (3 11 6 13) (4 10 12 9 8 5) (15)
(0 13 5 15 9 6 4 3 18 11 12) (2 10 7) (14)
S3
(0 10 12 11 7 5 3 14 2 9 13 4 6 15 8 1)
(0 13 11 14 15 1 7 10 5 4 3 9 8 2)
(0 13 10 2 4 8 11 12 5 15 7) (1 6 3 9) (14)
(0 1 10 14 2 13 5 9 15 12 11 3) (4 6 8) (7)
S4
(0 7 10 8 1 13 12 11 5 6 9 2 14 4) (3) (15)
(0 13 10 2 11 12 1 8 4 6) (3 5 15 9 7) (14)
(0 10 3) (1 6 7 13 2 9) (4 12 5 11 14 8 15)
(0 3 6 13 7 8 9 4 10 5 1 15 14 2) (11) (12)
S5
(0 2 4 7 6 11 15 9 5 10 3 1 12 13) (8) (14)
(0 14 8 5 7 1 11 10 15 6 13 9) (2) (3 12) (4)
(0 4 10 12 6 7 8 15 14) (1 2) (3 11 5 13) (9)
(0 11 9 15 3 7 13 4 1 8 6 2 12 19) (5 14)
S6
(0 12 14 5 2 10 3 15 11 4 9 13 7 8) (1) (6)
(0 10 13 11 14 3 2 4 7 5 12) (1 15 8 6 9)
(0 9) (1 14 11 10 4 2 15 6 12) (3 5 8 7) (13)
(0 4 9 14 8 11 7 10 1 3 12 6 15 13) (2) (5)
S7
(0 4 15 1 11 7 13 10 9 12 5) (2) (3 14 6 8)
(0 13 15 6 1) (2 11 12) (3 7 10 5 9) (4) (8 14)
(0 1 4 12) (2 11 8 10 6 7 14 9 15) (3 13 5)
(0 6 10) (1 11 15 12 14 3 8 9 5 4) (2 13) (7)
S8
(0 13) (1 2 8 10 3 4 6 11 14 12 5 15 7) (9)
(0 1 15 2 13 14 9 5 3 8 12) (4 10 6 7) (11)
(0 7 2 4 9 6 14 5 12 15 8) (1 11 13 3) (10)
(0 2 14 6 8 15 11) (1) (3 7 13 5 10 9 12) (4)
The process which decomposes a six bit number by taking the first and
last bits to represent a row and the middle bits to represent a column, results
in elements being chosen from the any of the S tables in the following order.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31
1 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32
2 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63
3 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64
P
16 7 20 21 29 12 28 17
1 15 23 26 5 18 31 10
2 8 24 14 32 27 3 9
19 13 30 6 22 11 4 25
Written as a product of cycles, P becomes:
(1 16 10 15 31 4 21 32 25 19 24 9)
(2 7 28 6 12 26 13 5 29 22 27 30 11 23 3 20 14 18 8 17)
Permuted Choice 1
The structure of permuted choice 1 is more clearly visible
when it is presented in 8 columns rather than 7. The division into
two parts is maintained. Each half has four and one half rows of
length eight.
57 49 41 33 25 17 9 1
58 50 42 34 26 18 10 2
59 51 43 35 27 19 11 3
60 52 44 36
63 55 47 39 31 23 15 7
62 54 46 38 30 22 14 6
61 53 45 37 29 21 13 5
28 20 12 4
As the bits 8, 16, 24, 32, 40, 48, 56, and 64 are not used,
things bocome even clearer if the bits are renumbered from 1 to 56.
The above array then becomes:
50 43 36 29 22 15 8 1
51 44 37 30 23 16 9 2
52 45 38 31 24 17 10 3
53 46 39 32
56 49 42 35 28 21 14 7
55 48 41 34 27 20 13 6
54 47 40 33 26 19 12 5
25 18 11 4
The permutation is now clear. Turn the lower group upside
down and slide the short row to the right, to get:
50 43 36 29 22 15 8 1
51 44 37 30 23 16 9 2
52 45 38 31 24 17 10 3
53 46 39 32
25 18 11 4
54 47 40 33 26 19 12 5
55 48 41 34 27 20 13 6
56 49 42 35 28 21 14 7
The two parts can now be assembled into a rectangle written from top
to bottom and right to left.
K1 through K16 are the 48 bit subsets of the 64 bit key
employed in each of the 16 rounds of the NBS cipher. They are
organized in eight rows of six columns, read across then down.
K1
10 51 34 60 49 17
33 57 2 9 19 42
3 35 26 25 44 58
59 1 36 27 18 41
22 28 39 54 37 4
47 30 5 53 23 29
61 21 38 63 15 20
45 14 13 62 55 31
K2
2 43 26 52 41 9
25 49 59 1 11 34
60 27 18 17 36 50
51 58 57 19 10 33
14 20 31 46 29 63
39 22 28 45 15 21
53 13 30 55 7 12
37 6 5 54 47 23
K3
51 27 10 36 25 58
9 33 43 50 60 18
44 11 2 1 49 34
35 42 41 3 59 17
61 4 15 30 13 47
23 6 12 29 62 5
37 28 14 39 54 63
21 53 20 38 31 7
K4
35 11 59 49 9 42
58 17 27 34 44 2
57 60 51 50 33 18
19 26 25 52 43 1
45 55 62 14 28 31
7 53 63 13 46 20
21 12 61 23 38 47
5 37 4 22 15 54
K5
19 60 43 33 58 26
42 1 11 18 57 51
41 44 35 34 17 2
3 10 9 36 27 50
29 39 46 61 12 15
54 37 47 28 30 4
5 63 45 7 22 31
20 21 55 6 62 38
K6
3 44 27 17 42 10
26 50 60 2 41 35
25 57 19 18 1 51
52 59 58 49 11 34
13 23 30 45 63 62
38 21 31 12 14 55
20 47 29 54 6 15
4 5 39 53 46 22
K7
52 57 11 1 26 59
10 34 44 51 25 19
9 41 3 2 50 35
36 43 42 33 60 18
28 7 14 29 47 46
22 5 15 63 61 39
4 31 13 38 53 62
55 20 23 37 30 6
K8
36 41 60 50 10 43
59 18 57 35 9 3
58 25 52 51 34 19
49 27 26 17 44 2
12 54 61 13 31 30
6 20 62 47 45 23
55 15 28 22 37 46
39 4 7 21 14 53
K9
57 33 52 42 2 35
51 10 49 27 1 60
50 17 44 43 26 11
41 19 18 9 36 59
4 46 53 5 23 22
61 12 54 39 37 15
47 7 20 14 29 38
31 63 62 13 6 45
K10
41 17 36 26 51 19
35 59 33 11 50 44
34 1 57 27 10 60
25 3 2 58 49 43
55 30 37 20 7 6
45 63 38 23 21 62
31 54 4 61 13 22
15 47 46 28 53 29
K11
25 1 49 10 35 3
19 43 17 60 34 57
18 50 41 11 59 44
9 52 51 42 33 27
39 14 21 4 54 53
29 47 22 7 5 46
15 38 55 45 28 6
62 31 30 12 37 13
K12
9 50 33 59 19 52
3 27 1 44 18 41
2 34 25 60 43 57
58 36 35 26 17 11
23 61 5 55 38 37
13 31 6 54 20 30
62 22 39 29 12 53
46 15 14 63 21 28
K13
58 34 17 43 3 36
52 11 50 57 2 25
51 18 9 44 27 41
42 49 19 10 1 60
7 45 20 39 22 21
28 15 53 38 4 14
46 6 23 13 63 37
30 62 61 47 5 12
K14
42 18 1 27 52 49
36 60 34 41 51 9
35 2 58 57 11 25
26 33 3 59 50 44
54 29 4 23 6 5
12 62 37 22 55 61
30 53 7 28 47 21
14 46 45 31 20 63
K15
26 2 50 11 36 33
49 44 18 25 35 58
19 51 42 41 60 9
10 17 52 43 34 57
38 13 55 7 53 20
63 46 21 6 39 45
14 37 54 12 31 5
61 30 29 15 4 47
K16
18 59 42 3 57 25
41 36 10 17 27 50
11 43 34 33 52 1
2 9 44 35 26 49
30 5 47 62 45 12
55 38 13 61 31 37
6 29 46 4 23 28
53 22 21 7 63 39
The following are the bits omitted in each of K1 through K16, by the
reduction from 56 to 48 bits. These are called the "exception sets."
E1 6 7 8 11 12 16 24 32 40 43 46 48 50 52 56 64
E2 3 4 8 16 24 32 35 38 40 42 44 48 56 61 62 64
E3 8 16 19 22 24 26 32 40 45 46 48 52 55 56 57 64
E4 3 6 8 10 16 24 29 30 32 36 39 40 41 48 56 64
E5 8 13 14 16 23 24 25 32 40 48 49 52 53 56 59 64
E6 7 8 9 16 24 28 32 33 36 37 40 43 48 56 61 64
E7 8 12 16 17 21 24 27 32 40 45 48 49 54 56 58 64
E8 1 5 8 11 16 24 29 32 33 38 40 42 48 56 63 64
E9 3 8 16 21 24 25 28 30 32 34 40 48 55 56 58 64
E10 5 8 9 12 14 16 18 24 32 39 40 42 48 52 56 64
E11 2 8 16 20 23 24 26 32 36 40 48 56 58 61 63 64
E12 4 7 8 10 16 24 32 40 42 45 47 48 49 51 56 64
E13 8 16 24 26 29 31 32 33 35 40 48 54 55 56 59 64
E14 8 10 13 15 16 17 19 24 32 38 39 40 43 48 56 64
E15 1 3 8 16 22 23 24 27 28 32 40 48 56 59 62 64
E16 8 14 15 16 19 20 24 32 40 48 51 54 56 58 60 64
The same sets arranged so that the parity bits are alligned.
\#\F2
E1 6 7 8 11 12 16 24 32 40 43 46 48 50 52 56 64
E2 3 4 8 16 24 32 35 38 40 42 44 48 56 61 62 64
E3 8 16 19 22 24 26 32 40 45 46 48 52 55 56 57 64
E4 3 6 8 10 16 24 29 30 32 36 39 40 41 48 56 64
E5 8 13 14 16 23 24 25 32 40 48 49 52 53 56 59 64
E6 7 8 9 16 24 28 32 33 36 37 40 43 48 56 61 64
E7 8 12 16 17 21 24 27 32 40 45 48 49 54 56 58 64
E8 1 5 8 11 16 24 29 32 33 38 40 42 48 56 63 64
E9 3 8 16 21 24 25 28 30 32 34 40 48 55 56 58 64
E10 5 8 9 12 14 16 18 24 32 39 40 42 48 52 56 64
E11 2 8 16 20 23 24 26 32 36 40 48 56 58 61 63 64
E12 4 7 8 10 16 24 32 40 42 45 47 48 49 51 56 64
E13 8 16 24 26 29 31 32 33 35 40 48 54 55 56 59 64
E14 8 10 13 15 16 17 19 24 32 38 39 40 43 48 56 64
E15 1 3 8 16 22 23 24 27 28 32 40 48 56 59 62 64
E16 8 14 15 16 19 20 24 32 40 48 51 54 56 58 60 64
\G
The exception sets with parity bits omitted.
E1 6 7 11 12 43 46 50 52
E2 3 4 35 38 42 44 61 62
E3 19 22 26 45 46 52 55 57
E4 3 6 10 29 30 36 39 41
E5 13 14 23 25 49 52 53 59
E6 7 9 28 33 36 37 43 61
E7 12 17 21 27 45 49 54 58
E8 1 5 11 29 33 38 42 63
E9 3 21 25 28 30 34 55 58
E10 5 9 12 14 18 39 42 52
E11 2 20 23 26 36 58 61 63
E12 4 7 10 42 45 47 49 51
E13 26 29 31 33 35 54 55 59
E14 10 13 15 17 19 38 39 43
E15 1 3 22 23 27 28 59 62
E16 14 15 19 20 51 54 58 60
K1 through K16 are the 48 bit subsets of the 64 bit key employed in each
of the 16 rounds of the NBS cipher, renumbered from 1 to 56 by omitting the bits
8, 16, 24, 32, 40, 48, 56, and 64, which are never used. They are organized in
eight rows of six columns, read across then down.
K1
9 45 30 53 43 15
29 50 2 8 17 37
3 31 23 22 39 51
52 1 32 24 16 36
20 25 35 48 33 4
42 27 5 47 21 26
54 19 34 56 14 18
40 13 12 55 49 28
K2
2 38 23 46 36 8
22 43 52 1 10 30
53 24 16 15 32 44
45 51 50 17 9 29
13 18 28 41 26 56
35 20 25 40 14 19
47 12 27 49 7 11
33 6 5 48 42 21
K3
45 24 9 32 22 51
8 29 38 44 53 16
39 10 2 1 43 30
31 37 36 3 52 15
54 4 14 27 12 42
21 6 11 26 55 5
33 25 13 35 48 56
19 47 18 34 28 7
K4
31 10 52 43 8 37
51 15 24 30 39 2
50 53 45 44 29 16
17 23 22 46 38 1
40 49 55 13 25 28
7 47 56 12 41 18
19 11 54 21 34 42
5 33 4 20 14 48
K5
17 53 38 29 51 23
37 1 10 16 50 45
36 39 31 30 15 2
3 9 8 32 24 44
26 35 41 54 11 14
48 33 42 25 27 4
5 56 40 7 20 28
18 19 49 6 55 34
K6
3 39 24 15 37 9
23 44 53 2 36 31
22 50 17 16 1 45
46 52 51 43 10 30
12 21 27 40 56 55
34 19 28 11 13 49
18 42 26 48 6 14
4 5 35 47 41 20
K7
46 50 10 1 23 52
9 30 39 45 22 17
8 36 3 2 44 31
32 38 37 29 53 16
25 7 13 26 42 41
20 5 14 56 54 35
4 28 12 34 47 55
49 18 21 33 27 6
K8
32 36 53 44 9 38
52 16 50 31 8 3
51 22 46 45 30 17
43 24 23 15 39 2
11 48 54 12 28 27
6 18 55 42 40 21
49 14 25 20 33 41
35 4 7 19 13 47
K9
50 29 46 37 2 31
45 9 43 24 1 53
44 15 39 38 23 10
36 17 16 8 32 52
4 41 47 5 21 20
54 11 48 35 33 14
42 7 18 13 26 34
28 56 55 12 6 40
K10
36 15 32 23 45 17
31 52 29 10 44 39
30 1 50 24 9 53
22 3 2 51 43 38
49 27 33 18 7 6
40 56 34 21 19 55
28 48 4 54 12 20
14 42 41 25 47 26
K11
22 1 43 9 31 3
17 38 15 53 30 50
16 44 36 10 52 39
8 46 45 37 29 24
35 13 19 4 48 47
26 42 20 7 5 41
14 34 49 40 25 6
55 28 27 11 33 12
K12
8 44 29 52 17 46
3 24 1 39 16 36
2 30 22 53 38 50
51 32 31 23 15 10
21 54 5 49 34 33
12 28 6 48 18 27
55 20 35 26 11 47
41 14 13 56 19 25
K13
51 30 15 38 3 32
46 10 44 50 2 22
45 16 8 39 24 36
37 43 17 9 1 53
7 40 18 35 20 19
25 14 47 34 4 13
41 6 21 12 56 33
27 55 54 42 5 11
K14
37 16 1 24 46 43
32 53 30 36 45 8
31 2 51 50 10 22
23 29 3 52 44 39
48 26 4 21 6 5
11 55 33 20 49 54
27 47 7 25 42 19
13 41 40 28 18 56
K15
23 2 44 10 32 29
43 39 16 22 31 51
17 45 37 36 53 8
9 15 46 38 30 50
34 12 49 7 47 18
56 41 19 6 35 40
13 33 48 11 28 5
54 27 26 14 4 42
K16
16 52 37 3 50 22
36 32 9 15 24 44
10 38 30 29 46 1
2 8 39 31 23 43
27 5 42 55 40 11
49 34 12 54 28 33
6 26 41 4 21 25
47 20 19 7 56 35
The following are the bits omitted in each of K1 through K16, by the
reduction from 56 to 48 bits. The bits are numbered from 1 to 56.
E1 6 7 10 11 38 41 44 46
E2 3 4 31 34 37 39 54 55
E3 17 20 23 40 41 46 49 50
E4 3 6 9 26 27 32 35 36
E5 12 13 21 22 43 46 47 52
E6 7 8 25 29 32 33 38 54
E7 11 15 19 24 40 43 48 51
E8 1 5 10 26 29 34 37 56
E9 3 19 22 25 27 30 49 51
E10 5 8 11 13 16 35 37 46
E11 2 18 21 23 32 51 54 56
E12 4 7 9 37 40 42 43 45
E13 23 26 28 29 31 48 49 52
E14 9 12 14 15 17 34 35 38
E15 1 3 20 21 24 25 52 55
E16 13 14 17 18 45 48 51 53
K1 through K16 are the 48 bit subsets of the 64 bit key employed in each
of the 16 rounds of the NBS cipher, renumbered from 0 to 55 by omitting the bits
8, 16, 24, 32, 40, 48, 56, and 64, which are never used. PC1 has been omitted.
They are organized in eight rows of six columns, read across then down.
K1
14 17 11 24 1 5
3 0 15 6 21 10
23 19 12 4 26 8
16 7 27 20 13 2
41 52 31 37 47 55
30 40 51 45 33 48
44 49 39 28 34 53
46 42 50 36 29 32
K2
15 18 12 25 2 6
4 1 16 7 22 11
24 20 13 5 27 9
17 8 0 21 14 3
42 53 32 38 48 28
31 41 52 46 34 49
45 50 40 29 35 54
47 43 51 37 30 33
K3
17 20 14 27 4 8
6 3 18 9 24 13
26 22 15 7 1 11
19 10 2 23 16 5
44 55 34 40 50 30
33 43 54 48 36 51
47 52 42 31 37 28
49 45 53 39 32 35
K4
19 22 16 1 6 10
8 5 20 11 26 15
0 24 17 9 3 13
21 12 4 25 18 7
46 29 36 42 52 32
35 45 28 50 38 53
49 54 44 33 39 30
51 47 55 41 34 37
K5
21 24 18 3 8 12
10 7 22 13 0 17
2 26 19 11 5 15
23 14 6 27 20 9
48 31 38 44 54 34
37 47 30 52 40 55
51 28 46 35 41 32
53 49 29 43 36 39
K6
23 26 20 5 10 14
12 9 24 15 2 19
4 0 21 13 7 17
25 16 8 1 22 11
50 33 40 46 28 36
39 49 32 54 42 29
53 30 48 37 43 34
55 51 31 45 38 41
K7
25 0 22 7 12 16
14 11 26 17 4 21
6 2 23 15 9 19
27 18 10 3 24 13
52 35 42 48 30 38
41 51 34 28 44 31
55 32 50 39 45 36
29 53 33 47 40 43
K8
27 2 24 9 14 18
16 13 0 19 6 23
8 4 25 17 11 21
1 20 12 5 26 15
54 37 44 50 32 40
43 53 36 30 46 33
29 34 52 41 47 38
31 55 35 49 42 45
K9
0 3 25 10 15 19
17 14 1 20 7 24
9 5 26 18 12 22
2 21 13 6 27 16
55 38 45 51 33 41
44 54 37 31 47 34
30 35 53 42 48 39
32 28 36 50 43 46
K10
2 5 27 12 17 21
19 16 3 22 9 26
11 7 0 20 14 24
4 23 15 8 1 18
29 40 47 53 35 43
46 28 39 33 49 36
32 37 55 44 50 41
34 30 38 52 45 48
K11
4 7 1 14 19 23
21 18 5 24 11 0
13 9 2 22 16 26
6 25 17 10 3 20
31 42 49 55 37 45
48 30 41 35 51 38
34 39 29 46 52 43
36 32 40 54 47 50
K12
6 9 3 16 21 25
23 20 7 26 13 2
15 11 4 24 18 0
8 27 19 12 5 22
33 44 51 29 39 47
50 32 43 37 53 40
36 41 31 48 54 45
38 34 42 28 49 52
K13
8 11 5 18 23 27
25 22 9 0 15 4
17 13 6 26 20 2
10 1 21 14 7 24
35 46 53 31 41 49
52 34 45 39 55 42
38 43 33 50 28 47
40 36 44 30 51 54
K14
10 13 7 20 25 1
27 24 11 2 17 6
19 15 8 0 22 4
12 3 23 16 9 26
37 48 55 33 43 51
54 36 47 41 29 44
40 45 35 52 30 49
42 38 46 32 53 28
K15
12 15 9 22 27 3
1 26 13 4 19 8
21 17 10 2 24 6
14 5 25 18 11 0
39 50 29 35 45 53
28 38 49 43 31 46
42 47 37 54 32 51
44 40 48 34 55 30
K16
13 16 10 23 0 4
2 27 14 5 20 9
22 18 11 3 25 7
15 6 26 19 12 1
40 51 30 36 46 54
29 39 50 44 32 47
43 48 38 55 33 52
45 41 49 35 28 31
The following are the bits omitted in each of K1 through K16, by the
reduction from 56 to 48 bits. The bits are numbered from 0 to 55, and PC-1 has
been omitted.
E1 9 18 22 25 35 38 43 54
E2 10 19 23 26 36 39 44 55
E3 0 12 21 25 29 38 41 46
E4 2 14 23 27 31 40 43 48
E5 1 4 16 25 33 42 45 50
E6 3 6 18 27 35 44 47 52
E7 1 5 8 20 37 46 49 54
E8 3 7 10 22 28 39 48 51
E9 4 8 11 23 29 40 49 52
E10 6 10 13 25 31 42 51 54
E11 8 12 15 27 28 33 44 53
E12 1 10 14 17 30 35 46 55
E13 3 12 16 19 29 32 37 48
E14 5 14 18 21 31 34 39 50
E15 7 16 20 23 33 36 41 52
E16 8 17 21 24 34 37 42 53
PC2
14 17 11 24 1 5
3 28 15 6 21 10
23 19 12 4 26 8
16 7 27 20 13 2
41 52 31 37 47 55
30 40 51 45 33 48
44 49 39 56 34 53
46 42 50 36 29 32
Notice that the first 24 elements are selected entirely from the inputs
between 1 an 28 while the latter 24 are take entirely from those between 29 and
56.
The elements omitted are: 9, 18, 22, 25, 35, 38, 43, and 54. These are
taken equally from the two halves.
Permuted choice 2 is composed of two permuted choices from sets of size
28. It appears below written in this way.
PC2
14 17 11 24 1 5
3 28 15 6 21 10
23 19 12 4 26 8
16 7 27 20 13 2
13 24 3 9 19 27
2 12 23 17 5 20
16 21 11 28 6 25
18 14 22 8 1 4
The omitted bits are now: 9, 18, 22, and 25 in the first half, and 7,
10, 15, and 26 in the second half.
Utilization of the key bits in the various rounds
The bits are numbered 1 through 64. The parity bits are unused.
ROUNDS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
BIT TOTAL
B1 20 10 16 24 8 17 4 11 14 2 9 23 3 18 14
B2 9 1 15 12 18 10 16 24 5 21 13 11 14 2 19 15
B3 13 22 19 1 15 12 20 6 7 5 21 4 12
B4 30 26 45 36 43 37 44 25 39 28 35 27 47 40 14
B5 33 45 36 43 37 44 32 28 35 27 47 30 42 26 14
B6 44 32 46 41 48 31 47 30 42 33 38 29 34 37 14
B7 41 48 31 40 26 45 38 29 34 25 39 28 46 13
B8 0
B9 10 6 7 5 21 13 11 22 19 1 15 12 18 20 14
B10 1 23 3 20 6 7 5 8 17 4 22 19 9 13
B11 11 14 2 9 23 3 18 10 16 24 8 17 4 13 14
B12 42 33 38 29 34 25 32 46 41 48 31 40 30 13
B13 45 38 29 34 25 39 28 46 41 48 31 40 26 33 14
B14 44 25 39 28 35 27 47 40 26 45 36 43 37 13
B15 41 35 27 47 30 42 33 38 36 43 37 44 32 46 14
B16 0
B17 6 16 24 8 17 4 22 14 2 9 23 3 20 10 14
B18 23 15 12 18 10 16 24 8 21 13 11 14 2 9 1 15
B19 11 22 19 1 15 12 18 20 6 7 5 21 13 13
B20 42 26 45 36 43 37 44 32 39 28 35 27 47 30 14
B21 38 36 43 37 44 32 46 35 27 47 30 42 33 45 14
B22 25 32 46 41 48 31 40 30 42 33 38 29 34 44 14
B23 35 48 31 40 26 45 36 29 34 25 39 28 41 13
B24 0
B25 16 7 5 21 13 11 14 19 1 15 12 18 10 6 14
B26 15 3 20 6 7 5 21 17 4 22 19 1 23 13
B27 22 14 2 9 23 3 20 10 16 24 8 17 4 11 14
B28 26 33 38 29 34 25 39 46 41 48 31 40 42 13
B29 36 29 34 25 39 28 41 48 31 40 26 45 38 13
B30 32 39 28 35 27 47 30 26 45 36 43 37 44 25 14
B31 48 27 47 30 42 33 38 29 43 37 44 32 46 41 35 15
B32 0
B33 7 24 8 17 4 22 2 9 23 3 20 6 16 13
B34 3 12 18 10 16 24 8 17 13 11 14 2 9 23 15 15
B35 14 19 1 15 12 18 10 6 7 5 21 13 11 22 14
B36 21 17 4 22 19 1 23 3 20 6 7 5 8 13
B37 29 43 37 44 32 46 41 35 27 47 30 42 33 38 36 15
B38 39 46 41 48 31 40 42 33 38 29 34 25 32 13
B39 27 31 40 26 45 36 43 34 25 39 28 35 48 13
B40 0
B41 24 5 21 13 11 14 2 19 1 15 12 18 10 16 7 15
B42 12 20 6 7 5 21 4 22 19 1 15 3 12
B43 2 9 23 3 20 6 16 24 8 17 4 22 14 13
B44 17 13 11 14 2 9 23 15 12 18 10 16 24 8 21 15
B45 43 34 25 39 28 35 48 31 40 26 45 36 29 13
B46 28 35 27 47 30 42 26 45 36 43 37 44 32 39 14
B47 31 47 30 42 33 38 29 34 37 44 32 46 41 48 27 15
B48 0
B49 5 8 17 4 22 19 9 23 3 20 6 7 24 13
B50 18 10 16 24 8 17 4 13 11 14 2 9 23 3 12 15
B51 2 19 1 15 12 18 10 16 7 5 21 13 11 14 14
B52 4 22 19 1 15 3 20 6 7 5 21 17 12
B53 34 37 44 32 46 41 48 27 47 30 42 33 38 29 43 15
B54 28 46 41 48 31 40 26 33 38 29 34 25 39 13
B55 47 40 26 45 36 43 37 25 39 28 35 27 31 13
B56 0
B57 8 21 13 11 14 2 9 1 15 12 18 10 16 24 5 15
B58 18 20 6 7 5 21 13 22 19 1 15 12 12
B59 19 9 23 3 20 6 7 24 8 17 4 22 2 13
B60 4 13 11 14 2 9 23 3 12 18 10 16 24 8 17 15
B61 37 25 39 28 35 27 31 40 26 45 36 43 34 13
B62 46 35 27 47 30 42 33 45 36 43 37 44 32 28 14
B63 40 30 42 33 38 29 34 44 32 46 41 48 31 47 14
B64 0
Utilization of the key bits in the various rounds
The bits are numbered 1 through 56, by omitting the parity bits.
ROUNDS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
BIT TOTAL
B1 20 10 16 24 8 17 4 11 14 2 9 23 3 18 14
B2 9 1 15 12 18 10 16 24 5 21 13 11 14 2 19 15
B3 13 22 19 1 15 12 20 6 7 5 21 4 12
B4 30 26 45 36 43 37 44 25 39 28 35 27 47 40 14
B5 33 45 36 43 37 44 32 28 35 27 47 30 42 26 14
B6 44 32 46 41 48 31 47 30 42 33 38 29 34 37 14
B7 41 48 31 40 26 45 38 29 34 25 39 28 46 13
B8 10 6 7 5 21 13 11 22 19 1 15 12 18 20 14
B9 1 23 3 20 6 7 5 8 17 4 22 19 9 13
B10 11 14 2 9 23 3 18 10 16 24 8 17 4 13 14
B11 42 33 38 29 34 25 32 46 41 48 31 40 30 13
B12 45 38 29 34 25 39 28 46 41 48 31 40 26 33 14
B13 44 25 39 28 35 27 47 40 26 45 36 43 37 13
B14 41 35 27 47 30 42 33 38 36 43 37 44 32 46 14
B15 6 16 24 8 17 4 22 14 2 9 23 3 20 10 14
B16 23 15 12 18 10 16 24 8 21 13 11 14 2 9 1 15
B17 11 22 19 1 15 12 18 20 6 7 5 21 13 13
B18 42 26 45 36 43 37 44 32 39 28 35 27 47 30 14
B19 38 36 43 37 44 32 46 35 27 47 30 42 33 45 14
B20 25 32 46 41 48 31 40 30 42 33 38 29 34 44 14
B21 35 48 31 40 26 45 36 29 34 25 39 28 41 13
B22 16 7 5 21 13 11 14 19 1 15 12 18 10 6 14
B23 15 3 20 6 7 5 21 17 4 22 19 1 23 13
B24 22 14 2 9 23 3 20 10 16 24 8 17 4 11 14
B25 26 33 38 29 34 25 39 46 41 48 31 40 42 13
B26 36 29 34 25 39 28 41 48 31 40 26 45 38 13
B27 32 39 28 35 27 47 30 26 45 36 43 37 44 25 14
B28 48 27 47 30 42 33 38 29 43 37 44 32 46 41 35 15
B29 7 24 8 17 4 22 2 9 23 3 20 6 16 13
B30 3 12 18 10 16 24 8 17 13 11 14 2 9 23 15 15
B31 14 19 1 15 12 18 10 6 7 5 21 13 11 22 14
B32 21 17 4 22 19 1 23 3 20 6 7 5 8 13
B33 29 43 37 44 32 46 41 35 27 47 30 42 33 38 36 15
B34 39 46 41 48 31 40 42 33 38 29 34 25 32 13
B35 27 31 40 26 45 36 43 34 25 39 28 35 48 13
B36 24 5 21 13 11 14 2 19 1 15 12 18 10 16 7 15
B37 12 20 6 7 5 21 4 22 19 1 15 3 12
B38 2 9 23 3 20 6 16 24 8 17 4 22 14 13
B39 17 13 11 14 2 9 23 15 12 18 10 16 24 8 21 15
B40 43 34 25 39 28 35 48 31 40 26 45 36 29 13
B41 28 35 27 47 30 42 26 45 36 43 37 44 32 39 14
B42 31 47 30 42 33 38 29 34 37 44 32 46 41 48 27 15
B43 5 8 17 4 22 19 9 23 3 20 6 7 24 13
B44 18 10 16 24 8 17 4 13 11 14 2 9 23 3 12 15
B45 2 19 1 15 12 18 10 16 7 5 21 13 11 14 14
B46 4 22 19 1 15 3 20 6 7 5 21 17 12
B47 34 37 44 32 46 41 48 27 47 30 42 33 38 29 43 15
B48 28 46 41 48 31 40 26 33 38 29 34 25 39 13
B49 47 40 26 45 36 43 37 25 39 28 35 27 31 13
B50 8 21 13 11 14 2 9 1 15 12 18 10 16 24 5 15
B51 18 20 6 7 5 21 13 22 19 1 15 12 12
B52 19 9 23 3 20 6 7 24 8 17 4 22 2 13
B53 4 13 11 14 2 9 23 3 12 18 10 16 24 8 17 15
B54 37 25 39 28 35 27 31 40 26 45 36 43 34 13
B55 46 35 27 47 30 42 33 45 36 43 37 44 32 28 14
B56 40 30 42 33 38 29 34 44 32 46 41 48 31 47 14
Utilization of the key Bits in the various rounds
The bits are numbered 0 through 55, by omitting the parity bits and PC1.
ROUNDS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
BIT TOTAL
B0 8 21 13 11 14 2 9 1 15 12 18 10 16 24 5 15
B1 5 8 17 4 22 19 9 23 3 20 6 7 24 13
B2 24 5 21 13 11 14 2 19 1 15 12 18 10 16 7 15
B3 7 24 8 17 4 22 2 9 23 3 20 6 16 13
B4 16 7 5 21 13 11 14 19 1 15 12 18 10 6 14
B5 6 16 24 8 17 4 22 14 2 9 23 3 20 10 14
B6 10 6 7 5 21 13 11 22 19 1 15 12 18 20 14
B7 20 10 16 24 8 17 4 11 14 2 9 23 3 18 14
B8 18 20 6 7 5 21 13 22 19 1 15 12 12
B9 18 10 16 24 8 17 4 13 11 14 2 9 23 3 12 15
B10 12 20 6 7 5 21 4 22 19 1 15 3 12
B11 3 12 18 10 16 24 8 17 13 11 14 2 9 23 15 15
B12 15 3 20 6 7 5 21 17 4 22 19 1 23 13
B13 23 15 12 18 10 16 24 8 21 13 11 14 2 9 1 15
B14 1 23 3 20 6 7 5 8 17 4 22 19 9 13
B15 9 1 15 12 18 10 16 24 5 21 13 11 14 2 19 15
B16 19 9 23 3 20 6 7 24 8 17 4 22 2 13
B17 2 19 1 15 12 18 10 16 7 5 21 13 11 14 14
B18 2 9 23 3 20 6 16 24 8 17 4 22 14 13
B19 14 19 1 15 12 18 10 6 7 5 21 13 11 22 14
B20 22 14 2 9 23 3 20 10 16 24 8 17 4 11 14
B21 11 22 19 1 15 12 18 20 6 7 5 21 13 13
B22 11 14 2 9 23 3 18 10 16 24 8 17 4 13 14
B23 13 22 19 1 15 12 20 6 7 5 21 4 12
B24 4 13 11 14 2 9 23 3 12 18 10 16 24 8 17 15
B25 4 22 19 1 15 3 20 6 7 5 21 17 12
B26 17 13 11 14 2 9 23 15 12 18 10 16 24 8 21 15
B27 21 17 4 22 19 1 23 3 20 6 7 5 8 13
B28 40 30 42 33 38 29 34 44 32 46 41 48 31 47 14
B29 47 40 26 45 36 43 37 25 39 28 35 27 31 13
B30 31 47 30 42 33 38 29 34 37 44 32 46 41 48 27 15
B31 27 31 40 26 45 36 43 34 25 39 28 35 48 13
B32 48 27 47 30 42 33 38 29 43 37 44 32 46 41 35 15
B33 35 48 31 40 26 45 36 29 34 25 39 28 41 13
B34 41 35 27 47 30 42 33 38 36 43 37 44 32 46 14
B35 41 48 31 40 26 45 38 29 34 25 39 28 46 13
B36 46 35 27 47 30 42 33 45 36 43 37 44 32 28 14
B37 28 46 41 48 31 40 26 33 38 29 34 25 39 13
B38 28 35 27 47 30 42 26 45 36 43 37 44 32 39 14
B39 39 46 41 48 31 40 42 33 38 29 34 25 32 13
B40 32 39 28 35 27 47 30 26 45 36 43 37 44 25 14
B41 25 32 46 41 48 31 40 30 42 33 38 29 34 44 14
B42 44 25 39 28 35 27 47 40 26 45 36 43 37 13
B43 44 32 46 41 48 31 47 30 42 33 38 29 34 37 14
B44 37 25 39 28 35 27 31 40 26 45 36 43 34 13
B45 34 37 44 32 46 41 48 27 47 30 42 33 38 29 43 15
B46 43 34 25 39 28 35 48 31 40 26 45 36 29 13
B47 29 43 37 44 32 46 41 35 27 47 30 42 33 38 36 15
B48 36 29 34 25 39 28 41 48 31 40 26 45 38 13
B49 38 36 43 37 44 32 46 35 27 47 30 42 33 45 14
B50 45 38 29 34 25 39 28 46 41 48 31 40 26 33 14
B51 33 45 36 43 37 44 32 28 35 27 47 30 42 26 14
B52 26 33 38 29 34 25 39 46 41 48 31 40 42 13
B53 42 26 45 36 43 37 44 32 39 28 35 27 47 30 14
B54 42 33 38 29 34 25 32 46 41 48 31 40 30 13
B55 30 26 45 36 43 37 44 25 39 28 35 27 47 40 14